

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd" >
<html>
<head>
    
    <title>JSFs: commandLink as a parameter for outputFormat - Stack Overflow</title>        
    <link rel="stylesheet" href="/content/all.css?v=4019">
    <link rel="shortcut icon" href="/favicon.ico">
    <link rel="apple-itouch-icon" href="/apple-touch-icon.png">
    <link rel="search" type="application/opensearchdescription+xml" title="Stack Overflow" href="/opensearch.xml">
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
    <script type="text/javascript" src="/content/js/master.js?v=4087"></script>
    <script type="text/javascript">var imagePath = '/content/img/so/';</script>
    
    <link rel="canonical" href="http://stackoverflow.com/questions/1205386/jsfs-commandlink-as-a-parameter-for-outputformat">
    <link rel="alternate" type="application/atom+xml" title="Feed for question 'JSFs: commandLink as a parameter for outputFormat'" href="/feeds/question/1205386">
    <script src="/content/js/question.js?v=4101" type="text/javascript"></script>
    

    <script src="/content/js/tageditor.js" type="text/javascript"></script>


    <script type="text/javascript">
        var fkey = "7dd6da2b6d7ed742ca0f2bf2df488ac8c8f7d2685ef37c0be31be42102044414";
    
        var isRegistered = true;
        var votesCast = [];
    
        
        
        $(function() {
            
            vote.init(1205386);
            comments.init();
            styleCode();
        });
    </script>


</head>
<body>
    <noscript>
        <div id="noscript-padding">
        </div>
    </noscript>
    <div id="notify-container">
    </div>

    <div class="container">
        <div id="header">       
            <div id="topbar">            	            
                <div id="hlinks">
                    <a href="/users/recent/61158"><img src="/content/img/so/replies-off.png" width="15" height="10" title="you have no new replies"></a>
                    <a href="/users/61158/kd304" >kd304</a>&nbsp;<span class="reputation-score" title="reputation score">3,470</span><span title="2 silver badges"><span class="badge2">&#9679;</span><span class="badgecount">2</span></span><span title="16 bronze badges"><span class="badge3">&#9679;</span><span class="badgecount">16</span></span>
<span class="link-separator">|</span>

                    <a href="/users/logout?returnurl=%2fquestions%2f1205386%2fjsfs-commandlink-as-a-parameter-for-outputformat">logout</a>
<span class="link-separator">|</span>

                    <a href="/about">about</a> <span class="link-separator">|</span> <a href="/faq">faq</a>
                </div>
                <div id="hsearch">
                    <form id="search" action="/search" method="get">
                    <div>
                        <input name="q" class="textbox" tabindex="1" onfocus="if (this.value=='search') this.value = ''" type="text" maxlength="80" size="28" value="search">
                    </div>
                    </form>
                </div>
            </div>
            <br style="clear: both">
            <div id="hlogo">
                <a href="/"><img src="/content/img/so/logo.png" width="250" height="61" alt="logo homepage"></a>
            </div>
            <div id="hmenus">
                <div class="nav">
                    <ul>
                        <li class="youarehere"><a href="/questions">Questions</a></li>
                        <li><a href="/tags">Tags</a></li>
                        <li><a href="/users">Users</a></li>
                        <li><a href="/badges">Badges</a></li>
                        <li><a href="/unanswered">Unanswered</a></li>
                    </ul>
                </div>
                <div class="nav" style="float: right;">
                    <ul>
                        <li style="margin-right: 0px;" >
                            <a href="/questions/ask">Ask Question</a>
                        </li>
                    </ul>
                </div>
            </div>
        </div>
    
        <div id="content">
            

<div id="question-header">
    <h2><a href="/questions/1205386/jsfs-commandlink-as-a-parameter-for-outputformat" class="question-hyperlink">JSFs: commandLink as a parameter for outputFormat</a></h2>
</div>

<div id="mainbar">
<div id="question" class="">
    

    <table>
    <tr>
    <td class="votecell">
        
<div class="vote">
    <input type="hidden" value="1205386">
    <img class="vote-up" 
        src="/content/img/so/vote-arrow-up.png" 
        width="40" height="25" 
        alt="vote up" title="This question is useful and clear (click again to undo)">
    <span class="vote-count-post">
        1
    </span>
    <img class="vote-down" 
        src="/content/img/so/vote-arrow-down.png" 
        width="40" height="25" 
        alt="vote down" title="This question is unclear or not useful (click again to undo)">
    <br>

    <img class="vote-favorite" 
        src="/content/img/so/vote-favorite-off.png" 
        width="32" height="31" 
        alt="star" title="This is a favorite question (click again to undo)">
    <div class="favoritecount"><b></b></div>
    

</div>
        
    </td>
    <td>
        <div>          
            <div class="post-text">
                <p>Hi,</p>

<p>I'm in the process of internationalising some JSF files so am externalising strings (and the concatenation of strings using placeholders). I have very little experience with JSF (today and yesterday) so excuse me if there is an obviuos answer to my question!</p>

<p>I have been using the h:outputFormat tag (and the f:param tag) successfully for simple placeholders but now I'm looking to replace a placeholder with a commandLink component.</p>

<p>i.e. </p>

<pre><code>&lt;h:outputFormat value="#{adminMsgs.scheduleUpdateLink} "&gt;
    &lt;h:commandLink value="#{adminMsgs.update}" action="refresh" /&gt;
&lt;/h:outputFormat&gt;
</code></pre>

<p>Properties file:</p>

<pre><code>scheduleUpdateLink = After waiting a few seconds, please {0} the page.
update = update
</code></pre>

<p>And output along these lines:</p>

<pre><code>After waiting a few seconds, please &lt;a href="#" class="..." onclick="...;return false;"&gt;update&lt;/a&gt; the page.
</code></pre>

<p>This <em>doesn't</em> work (the update link appears before the 'scheduleUpdateLink' text), does anyone know how I might do it?</p>

<p>Thanks in advance.</p>

<p><strong>EDIT / UPDATE</strong></p>

<p>Thanks for your reply McDowell - very useful, but still haven't completely solved my problem. I will also be needing to do the same with input boxes (h:inputText), and there may also be instances where there are multiple placeholders in one resource string. Hence I cannot guarantee the order in, say, Arabic, will be the same.</p>

<p>If I went with a Java function; do you know if there is a way I can pass, as a string, the JSF tags, e.g. <code>&lt;h:outputFormat value=..</code>. and use the faces context to obtain the rendered HTML which I can then insert into respective placeholders and return as plain HTML? Or any other ideas along these lines?</p>

<p>Cheers.</p>

            </div>            
            <div class="post-taglist">
                <a href="/questions/tagged/jsf" class="post-tag" title="show questions tagged 'jsf'" rel="tag">jsf</a> <a href="/questions/tagged/internationalization" class="post-tag" title="show questions tagged 'internationalization'" rel="tag">internationalization</a> <a href="/questions/tagged/properties" class="post-tag" title="show questions tagged 'properties'" rel="tag">properties</a> <a href="/questions/tagged/java" class="post-tag" title="show questions tagged 'java'" rel="tag">java</a> 
            </div>
            <table class="fw">
            <tr>
            <td class="vt">
                <div class="post-menu"><a href="/posts/1205386/edit" title="edit this post, or roll it back to a previous revision">edit</a><span class="link-separator">|</span><a id="close-question-1205386" title="closes/opens question for answering; when closed, no more answers can be added">close</a><span class="link-separator">|</span><a id="flag-post-1205386" title="flag this post for serious problems">flag</a></div>                            
            </td>
            
            <td align="right" class="post-signature">
            <div class="user-info"><div class="user-action-time">edited <a href="/revisions/1205386/list" title="show all edits to this post"><span title="2009-07-30 12:45:35Z UTC" class="relativetime">1 min ago</span></a></div><div class="user-gravatar32"></div><div class="user-details"><br></div></div>
            </td>
            
            <td class="post-signature owner">                                                
            <div class="user-info"><div class="user-action-time">asked <span title="2009-07-30 09:08:30Z UTC" class="relativetime">3 hours ago</span></div><div class="user-gravatar32"><a href="/users/124426/ed"><img src="http://www.gravatar.com/avatar/76676180aea6681d69779993e870ce0e?s=32&amp;d=identicon&amp;r=PG" height="32" width="32" alt=""></a></div><div class="user-details"><a href="/users/124426/ed" >Ed </a><br><span class="reputation-score" title="reputation score">51</span><span title="3 bronze badges"><span class="badge3">&#9679;</span><span class="badgecount">3</span></span></div></div>
            </td>
            </tr>
            </table>
        </div>
    </td>
    </tr>

    

<tr>
<td class="votecell"></td>
<td>
    <div class="post-comments">
        <div id="comments-1205386" class="display-none comments-container">
            <div class="comments">
                
            </div>
        
            <form id="form-comments-1205386" class="post-comments"></form>
        
        </div>    
        <a id="comments-link-1205386" class="comments-link" title="add a comment to this post">add comment</a>
    </div>
</td>
</tr>
    
    </table>
    
</div>



<div id="answers">

    <a name="sort-top"></a>
    <div id="answers-header">
        <div id="subheader">
            <h2>3 Answers</h2>
            <div id="tabs">
                <a href="/questions/1205386?sort=oldest#sort-top" title="Answers in the order they were given">oldest</a>
<a class="youarehere" href="/questions/1205386?sort=newest#sort-top" title="Most recent answers first">newest</a>
<a href="/questions/1205386?sort=votes#sort-top" title="Answers with the most votes first">votes</a>

            </div>
        </div>
    </div>



    <a name="1205721"></a>
    
    <div id="answer-1205721" class="answer ">
        
        <table>
        <tr>
        <td class="votecell">
            
<div class="vote">
    <input type="hidden" value="1205721">
    <img class="vote-up" 
        src="/content/img/so/vote-arrow-up.png" 
        width="40" height="25" 
        alt="vote up" title="This answer is helpful (click again to undo)">
    <span class="vote-count-post">
        1
    </span>
    <img class="vote-down" 
        src="/content/img/so/vote-arrow-down.png" 
        width="40" height="25" 
        alt="vote down" title="This answer is not helpful (click again to undo)">
    <br>

</div>

        </td>
        <td>
            <div class="post-text"><p>The <a href="http://java.sun.com/javaee/javaserverfaces/1.2%5FMR1/docs/tlddocs/h/outputFormat.html" rel="nofollow">h:outputFormat</a> tag will (as far as I know) only use <a href="http://java.sun.com/javaee/javaserverfaces/1.2%5FMR1/docs/tlddocs/f/param.html" rel="nofollow">f:param</a> children as parameters.</p>

<p>If the message was a link (instead of a <a href="http://java.sun.com/javaee/javaserverfaces/1.2%5FMR1/docs/tlddocs/h/commandLink.html" rel="nofollow">h:commandLink</a>), you could use HTML literals:</p>

<pre><code>&lt;h:outputFormat escape="false" 
    value="...seconds, please &amp;lt;a href='etc..." /&gt;.
</code></pre>

<p>I would not recommend trying to emulate h:commandLink by doing this. It might be possible to find a richer version of h:commandLink in a <a href="http://www.jsfmatrix.net/" rel="nofollow">third party library</a> that does exactly what you want.</p>

<p>Just splitting the string into two is possible, but makes life difficult for translators and the quality of translation may suffer (especially if you're doing this a lot).</p>

<p>I'd look at using a custom function like this:</p>

<pre><code>&lt;f:loadBundle basename="i18n.I18n" var="bundle" /&gt;
&lt;h:outputText value="#{i18n:fragment(bundle.scheduleUpdateLink, 0)}" /&gt;
&lt;h:commandLink&gt;
  &lt;h:outputText value="#{bundle.update}" /&gt;
&lt;/h:commandLink&gt;
&lt;h:outputText value="#{i18n:fragment(bundle.scheduleUpdateLink, 1)}" /&gt;
</code></pre>

<p>The rendered output is of the form:</p>

<pre><code>After waiting a few seconds, please &lt;script type="text/javascript"&gt;&lt;!--
    /*JavaScript elided*/
//--&gt;
&lt;/script&gt;&lt;a href="#"
      onclick="return oamSubmitForm('someClientId');"&gt;update&lt;/a&gt; the page.
</code></pre>

<p>The function is backed by a static method that splits the string and returns the requested fragment:</p>

<pre><code>public static String fragment(String string, int index) {
  // TODO: regex probably not complete; ask stackoverflow!
  // see http://java.sun.com/javase/6/docs/api/java/text/MessageFormat.html
  final String regex = "\\{\\d.*?\\}";
  String[] fragments = string.split(regex, index + 2);
  return fragments[index];
  // TODO: error handling
}
</code></pre>

<p>Depending on your view technology (Facelets or JSP), the function declaration is slightly different:</p>

<ul>
<li><a href="https://facelets.dev.java.net/nonav/docs/dev/docbook.html#taglib-create" rel="nofollow">Facelets tag library documentation</a></li>
<li><a href="http://java.sun.com/javaee/5/docs/tutorial/doc/bnahq.html#bnaio" rel="nofollow">Java EE 5 tutorial on JSP tag libraries</a></li>
</ul>
</div>            
            <table class="fw">
            <tr>
            <td class="vt">
                <div class="post-menu"><a href="/questions/1205386/jsfs-commandlink-as-a-parameter-for-outputformat/1205721#1205721" title="permalink to this answer">link</a><span class="link-separator">|</span><a href="/posts/1205721/edit" title="edit this post, or roll it back to a previous revision">edit</a><span class="link-separator">|</span><a id="flag-post-1205721" title="flag this post for serious problems">flag</a></div>
                
            </td>
            
            
            <td align="right" class="post-signature">                   
            <div class="user-info"><div class="user-action-time">answered <span title="2009-07-30 10:23:46Z UTC" class="relativetime">2 hours ago</span></div><div class="user-gravatar32"><a href="/users/304/mcdowell"><img src="http://www.gravatar.com/avatar/9061706d2661cf0fa9f2df0eee56cf9b?s=32&amp;d=identicon&amp;r=PG" height="32" width="32" alt=""></a></div><div class="user-details"><a href="/users/304/mcdowell" >McDowell</a><br><span class="reputation-score" title="reputation score">9,173</span><span title="7 silver badges"><span class="badge2">&#9679;</span><span class="badgecount">7</span></span><span title="18 bronze badges"><span class="badge3">&#9679;</span><span class="badgecount">18</span></span></div></div>    
            </td>
            </tr>
            </table>
        </td>
        </tr>
        
        

<tr>
<td class="votecell"></td>
<td>
    <div class="post-comments">
        <div id="comments-1205721" class="display-none comments-container">
            <div class="comments">
                
            </div>
        
            <form id="form-comments-1205721" class="post-comments"></form>
        
        </div>    
        <a id="comments-link-1205721" class="comments-link" title="add a comment to this post">add comment</a>
    </div>
</td>
</tr>
        
        </table>
    </div>


    <a name="1205713"></a>
    
    <div id="answer-1205713" class="answer ">
        
        <table>
        <tr>
        <td class="votecell">
            
<div class="vote">
    <input type="hidden" value="1205713">
    <img class="vote-up" 
        src="/content/img/so/vote-arrow-up.png" 
        width="40" height="25" 
        alt="vote up" title="This answer is helpful (click again to undo)">
    <span class="vote-count-post">
        0
    </span>
    <img class="vote-down" 
        src="/content/img/so/vote-arrow-down.png" 
        width="40" height="25" 
        alt="vote down" title="This answer is not helpful (click again to undo)">
    <br>

</div>

        </td>
        <td>
            <div class="post-text"><p>To solve your problem you can use the &lt;h:outputText&gt; instead like Thorbjørn said.</p>

<p>Basicly your code and properties file become like this:</p>

<pre><code>&lt;h:outputText value="#{adminMsgs.scheduleUpdateLink1}" /&gt;
&lt;h:commandLink value="#{adminMsgs.update}" action="refresh" /&gt;
&lt;h:outputText value0"#{adminMsgs.scheduleUpdateLink2}" /&gt;
</code></pre>

<p>and the properties file like this: </p>

<pre><code>scheduleUpdateLink1 = After waiting a few seconds, please
update = update
scheduleUpdateLink2 = the page.
</code></pre>

<p>Tbh I dont think outputFormat works with UiComponents, but only text.</p>
</div>            
            <table class="fw">
            <tr>
            <td class="vt">
                <div class="post-menu"><a href="/questions/1205386/jsfs-commandlink-as-a-parameter-for-outputformat/1205713#1205713" title="permalink to this answer">link</a><span class="link-separator">|</span><a href="/posts/1205713/edit" title="edit this post, or roll it back to a previous revision">edit</a><span class="link-separator">|</span><a id="flag-post-1205713" title="flag this post for serious problems">flag</a></div>
                
            </td>
            
            <td align="right" class="post-signature">
            <div class="user-info"><div class="user-action-time">edited <a href="/revisions/1205713/list" title="show all edits to this post"><span title="2009-07-30 10:38:44Z UTC" class="relativetime">2 hours ago</span></a></div><div class="user-gravatar32"><a href="/users/53897/thorbjorn-ravn-andersen"><img src="http://www.gravatar.com/avatar/67548a954313a5678565a020e98d4ccf?s=32&amp;d=identicon&amp;r=PG" height="32" width="32" alt=""></a></div><div class="user-details"><a href="/users/53897/thorbjorn-ravn-andersen" >Thorbjørn Ravn Andersen</a><br></div></div>
            </td>
            
            
            <td align="right" class="post-signature">                   
            <div class="user-info"><div class="user-action-time">answered <span title="2009-07-30 10:21:08Z UTC" class="relativetime">2 hours ago</span></div><div class="user-gravatar32"><a href="/users/39268/chrisad"><img src="http://www.gravatar.com/avatar/877d0f7268c629d7ab0f20b1b8360d88?s=32&amp;d=identicon&amp;r=PG" height="32" width="32" alt=""></a></div><div class="user-details"><a href="/users/39268/chrisad" >ChrisAD</a><br><span class="reputation-score" title="reputation score">413</span><span title="11 bronze badges"><span class="badge3">&#9679;</span><span class="badgecount">11</span></span></div></div>    
            </td>
            </tr>
            </table>
        </td>
        </tr>
        
        

<tr>
<td class="votecell"></td>
<td>
    <div class="post-comments">
        <div id="comments-1205713" class="display-none comments-container">
            <div class="comments">
                
            </div>
        
            <form id="form-comments-1205713" class="post-comments"></form>
        
        </div>    
        <a id="comments-link-1205713" class="comments-link" title="add a comment to this post">add comment</a>
    </div>
</td>
</tr>
        
        </table>
    </div>


    <a name="1205488"></a>
    
    <div id="answer-1205488" class="answer ">
        
        <table>
        <tr>
        <td class="votecell">
            
<div class="vote">
    <input type="hidden" value="1205488">
    <img class="vote-up" 
        src="/content/img/so/vote-arrow-up.png" 
        width="40" height="25" 
        alt="vote up" title="This answer is helpful (click again to undo)">
    <span class="vote-count-post">
        0
    </span>
    <img class="vote-down" 
        src="/content/img/so/vote-arrow-down.png" 
        width="40" height="25" 
        alt="vote down" title="This answer is not helpful (click again to undo)">
    <br>

</div>

        </td>
        <td>
            <div class="post-text"><p>In order for plain texts to be rendered correctly by JSF, it must be generated by &lt;html:outputText ... &gt; (there is some obscure technical reason).    I would do this with an outputText, a commandLink and an outputText.</p>

<p>In general, when dealing with JSF <em>everything</em> must be a tag, no plain text.</p>

<p>A handy reference: <a href="http://exadel.com/tutorial/jsf/jsftags-guide.html" rel="nofollow">http://exadel.com/tutorial/jsf/jsftags-guide.html</a></p>
</div>            
            <table class="fw">
            <tr>
            <td class="vt">
                <div class="post-menu"><a href="/questions/1205386/jsfs-commandlink-as-a-parameter-for-outputformat/1205488#1205488" title="permalink to this answer">link</a><span class="link-separator">|</span><a href="/posts/1205488/edit" title="edit this post, or roll it back to a previous revision">edit</a><span class="link-separator">|</span><a id="flag-post-1205488" title="flag this post for serious problems">flag</a></div>
                
            </td>
            
            
            <td align="right" class="post-signature">                   
            <div class="user-info"><div class="user-action-time">answered <span title="2009-07-30 09:29:58Z UTC" class="relativetime">3 hours ago</span></div><div class="user-gravatar32"><a href="/users/53897/thorbjorn-ravn-andersen"><img src="http://www.gravatar.com/avatar/67548a954313a5678565a020e98d4ccf?s=32&amp;d=identicon&amp;r=PG" height="32" width="32" alt=""></a></div><div class="user-details"><a href="/users/53897/thorbjorn-ravn-andersen" >Thorbjørn Ravn Andersen</a><br><span class="reputation-score" title="reputation score">2,518</span><span title="1 silver badge"><span class="badge2">&#9679;</span><span class="badgecount">1</span></span><span title="9 bronze badges"><span class="badge3">&#9679;</span><span class="badgecount">9</span></span></div></div>    
            </td>
            </tr>
            </table>
        </td>
        </tr>
        
        

<tr>
<td class="votecell"></td>
<td>
    <div class="post-comments">
        <div id="comments-1205488" class="comments-container">
            <div class="comments">
                
<table>
            
    <tr id="comment-1028726" class="comment">
        <td class="comment-actions"><table><tr><td class="comment-score"><span>&nbsp;</span></td><td><img class="comment-up" src="/content/img/so/comment-up.png" width="14" height="14" title="this is a great comment"></td></tr><tr><td>&nbsp;</td><td><img class="comment-flag" src="/content/img/so/comment-flag.png" width="14" height="14" title="flag this comment as offensive, spam, or hate speech"></td></tr></table></td>
        <td class="comment-text">Sorry; has this got anything to do with the question? I'm having difficulty understanding if so...thanks for the link though, quite useful. &ndash;&nbsp;<a href="/users/124426/ed" class="comment-user">Ed </a> <span class="comment-date"><span title="2009-07-30 09:36:00Z UTC">3 hours ago</span></span></td>
    </tr>
            
    <tr id="comment-1028960" class="comment">
        <td class="comment-actions"><table><tr><td class="comment-score"><span>&nbsp;</span></td><td><img class="comment-up" src="/content/img/so/comment-up.png" width="14" height="14" title="this is a great comment"></td></tr><tr><td>&nbsp;</td><td><img class="comment-flag" src="/content/img/so/comment-flag.png" width="14" height="14" title="flag this comment as offensive, spam, or hate speech"></td></tr></table></td>
        <td class="comment-text">ChrisAD has understood and answered in more detail. &ndash;&nbsp;<a href="/users/53897/thorbjorn-ravn-andersen" class="comment-user">Thorbjørn Ravn Andersen</a> <span class="comment-date"><span title="2009-07-30 10:37:58Z UTC">2 hours ago</span></span></td>
    </tr>

</table>
            </div>
        
            <form id="form-comments-1205488" class="post-comments"></form>
        
        </div>    
        <a id="comments-link-1205488" class="comments-link" title="add a comment to this post">add comment</a>
    </div>
</td>
</tr>
        
        </table>
    </div>


<div style="height:20px; clear:both;"></div>


    <form id="post-form" action="/questions/1205386/answer" method="post">
        <h2>Your Answer</h2>
        

<script src="/Content/Js/wmd.js?v=3297" type="text/javascript"></script>

<script type="text/javascript">
    $(function() { editorReady(1); });
</script>

<div id="post-editor">


    <div id="wmd-container" class="resizable-textarea">
        <div id="wmd-button-bar"></div>
        <textarea id="wmd-input" name="post-text" cols="92" rows="15" tabindex="101"></textarea>
    </div>
    <div id="wmd-form-error" style="float:left;"><span class="form-error"></span></div>
    

    <div class="community-option">
        <input id="communitymode" name="communitymode" type="checkbox" >
        <label for="communitymode" title="community owned posts do not generate any reputation for the owner, have a lower reputation barrier for collaborative editing, and show only a revision history instead of a signature block">community wiki</label>
    </div>


    <div id="wmd-preview"></div>

    <div id="post-editor-hidden">
        <input id="fkey" name="fkey" type="hidden" value="7dd6da2b6d7ed742ca0f2bf2df488ac8c8f7d2685ef37c0be31be42102044414">
    </div>
</div>
        
        <div class="form-submit" style="clear:both;"><input id="submit-button" type="submit" value="Post Your Answer" tabindex="110"></div>
    </form>
    
    

    <h2>
        Not the answer you're looking for?
        Browse other questions tagged <a href="/questions/tagged/jsf" class="post-tag" title="show questions tagged 'jsf'" rel="tag">jsf</a> <a href="/questions/tagged/internationalization" class="post-tag" title="show questions tagged 'internationalization'" rel="tag">internationalization</a> <a href="/questions/tagged/properties" class="post-tag" title="show questions tagged 'properties'" rel="tag">properties</a> <a href="/questions/tagged/java" class="post-tag" title="show questions tagged 'java'" rel="tag">java</a>  or <a href="/questions/ask">ask your own question</a>.
    </h2>
</div>

<img src="/posts/1205386/increment-view-count/1d58" style="display:none" alt="">

</div>

<div id="sidebar" style="width:220px">

    
    
    <div class="module" style="padding-bottom:1px">
    <p class="label-key">tagged</p>
    <div style="margin-bottom:10px; margin-top:5px;">
        <a href="/questions/tagged/java" class="post-tag" title="show questions tagged 'java'" rel="tag">java</a>&nbsp;<span class="item-multiplier">&times;&nbsp;16529</span><br>
<a href="/questions/tagged/internationalization" class="post-tag" title="show questions tagged 'internationalization'" rel="tag">internationalization</a>&nbsp;<span class="item-multiplier">&times;&nbsp;383</span><br>
<a href="/questions/tagged/jsf" class="post-tag" title="show questions tagged 'jsf'" rel="tag">jsf</a>&nbsp;<span class="item-multiplier">&times;&nbsp;357</span><br>
<a href="/questions/tagged/properties" class="post-tag" title="show questions tagged 'properties'" rel="tag">properties</a>&nbsp;<span class="item-multiplier">&times;&nbsp;322</span><br>

    </div> 
    <p class="label-key">asked</p>
    <p class="label-value">today</p>
    <p class="label-key">viewed</p>
    <p class="label-value">19 times</p> 
       
    <p class="label-key">latest activity</p>
    <p class="label-value">today</p>

    </div>    
            
    
    <div class="everyonelovesstackoverflow">
        <script type="text/javascript">
            document.write(unescape("%3Cscript src='http://ads.stackoverflow.com/a.aspx?ZoneID=4&amp;Task=Get&amp;IFR=False&amp;PageID=52405&amp;SiteID=1&amp;Random=" + (+new Date()) + "&amp;Keywords=jsf,internationalization,properties,java' type='text/javascript'%3E%3C/script%3E"));
        </script>
        <noscript>
            <div>
            <a href="http://ads.stackoverflow.com/a.aspx?ZoneID=4&amp;Task=Click&amp;Mode=HTML&amp;SiteID=1&amp;PageID=52405">
            <img src="http://ads.stackoverflow.com/a.aspx?ZoneID=4&amp;Task=Get&amp;Mode=HTML&amp;SiteID=1&amp;PageID=52405" alt="">
            </a>
            </div>
        </noscript>
    </div>

    
    <div class="welovestackoverflow">
        <script type="text/javascript">
            
	document.write(
	   '<strong>Wanted:</strong> ' +
	   '<a href="http://jobs.stackoverflow.com/?5063">' +
	   "Network Engineer - Level 3" +
	   ' at ' +
	   "Gilt Groupe</a> (" +
	   "New York, NY" +
	   '). See this and other great job listings at ' +
	   '<a href="http://jobs.stackoverflow.com">jobs.stackoverflow.com</a>.');
	
        </script>
    </div>
        
    <div class="module">
    <h4>Related</h4>
    <div style="line-height:120%; font-size:90%;">
    <div class="spacer">
<a href="/questions/198023/tools-to-help-with-internationalization-of-strings-in-jsp" class="question-hyperlink">Tools to help with Internationalization of Strings in JSP</a></div>
<div class="spacer">
<a href="/questions/216478/gettext-is-it-a-good-idea-for-the-message-id-to-be-the-english-text" class="question-hyperlink">Gettext: Is it a good idea for the message ID to be the english text?</a></div>
<div class="spacer">
<a href="/questions/228835/best-practice-javascript-and-multilanguage" class="question-hyperlink">Best practice javascript and multilanguage</a></div>
<div class="spacer">
<a href="/questions/246097/international-phone-and-address-data" class="question-hyperlink">International Phone and Address Data?</a></div>
<div class="spacer">
<a href="/questions/270829/internationalizing-desktop-app-within-a-couple-years-what-should-we-do-now" class="question-hyperlink">Internationalizing Desktop App within a couple years&hellip; What should we do now?</a></div>
<div class="spacer">
<a href="/questions/273847/how-do-you-handle-translation-of-text-with-markup" class="question-hyperlink">How do you handle translation of text with markup?</a></div>
<div class="spacer">
<a href="/questions/280260/i18n-best-practices-for-internationalization-xliff-gettext-ini" class="question-hyperlink">i18n - best practices for internationalization - XLIFF, gettext, INI, &hellip; ??</a></div>
<div class="spacer">
<a href="/questions/314110/how-do-you-internationalise-text-in-the-database" class="question-hyperlink">How do you internationalise text in the database?</a></div>
<div class="spacer">
<a href="/questions/326891/how-do-i-automatically-set-a-users-locale-in-php" class="question-hyperlink">How do I automatically set a user&rsquo;s locale in PHP?</a></div>
<div class="spacer">
<a href="/questions/366838/how-to-localize-content-of-a-django-application" class="question-hyperlink">How to localize Content of a Django application</a></div>
<div class="spacer">
<a href="/questions/400167/righttoleft-property-in-form-in-c-updated" class="question-hyperlink">RightToLeft property in Form in C# (updated)</a></div>
<div class="spacer">
<a href="/questions/417004/unicode-characters-in-window-caption" class="question-hyperlink">Unicode characters in window caption</a></div>
<div class="spacer">
<a href="/questions/437371/php-locale-aware-number-format" class="question-hyperlink">PHP: Locale aware number format</a></div>
<div class="spacer">
<a href="/questions/450687/programming-multi-language-php-applications" class="question-hyperlink">Programming Multi-Language PHP applications</a></div>
<div class="spacer">
<a href="/questions/463714/django-missing-translation-of-some-strings-any-idea-why" class="question-hyperlink">Django missing translation of some strings.  Any idea why?</a></div>

    </div>
    </div>

    <div class="everyonelovesstackoverflow">
        <script type="text/javascript">
            document.write(unescape("%3Cscript src='http://ads.stackoverflow.com/a.aspx?ZoneID=9&amp;Task=Get&amp;IFR=False&amp;PageID=52405&amp;SiteID=1&amp;Random=" + (+new Date()) + "&amp;Keywords=jsf,internationalization,properties,java' type='text/javascript'%3E%3C/script%3E"));
        </script>
        <noscript>
            <div>
            <a href="http://ads.stackoverflow.com/a.aspx?ZoneID=9&amp;Task=Click&amp;Mode=HTML&amp;SiteID=1&amp;PageID=52405">
            <img src="http://ads.stackoverflow.com/a.aspx?ZoneID=9&amp;Task=Get&amp;Mode=HTML&amp;SiteID=1&amp;PageID=52405" alt="">
            </a>
            </div>
        </noscript>
    </div>

    
</div>

<div id="mainbar-footer">    
    
<div id="feed-link">
    <div id="feed-link-image"><a href="/feeds/question/1205386" title="a syndicated data feed of this page suitable for your favorite feed reader"><img src="/Content/Img/feed-icon-small.png" width="14" height="14" alt="feed icon"></a></div>
    <div id="feed-link-text"><a href="/feeds/question/1205386" title="a syndicated data feed of this page suitable for your favorite feed reader">question feed</a></div>
</div>

</div>


        </div>
    </div>
    <div id="footer">
        <div class="container">
            <div id="footer-menu">
                <a href="/about">about</a> |
                <a href="/faq">faq</a> |
                <a href="http://blog.stackoverflow.com/">blog</a> |
                <a href="http://itc.conversationsnetwork.org/series/stackoverflow.html">podcast</a> |
                <a href="/privacy">privacy policy</a> |
                <a href="http://ads.stackoverflow.com/a.aspx?ZoneID=0&amp;BannerID=323&amp;AdvertiserID=5&amp;CampaignID=194&amp;Task=Click&amp;SiteID=1">advertising info</a> |
                <b><a href="mailto:team@stackoverflow.com">contact us</a></b> |
                <b><a href="http://meta.stackoverflow.com">feedback always welcome</a></b>
                <div id="footer-sites">
                    <a href="http://stackoverflow.com">stackoverflow.com</a> | 
                    <a href="http://serverfault.com">serverfault.com</a> | 
                    <a href="http://superuser.com">superuser.com</a> | 
                    <a href="http://www.howtogeek.com">howtogeek.com</a> | 
                    <a href="http://meta.stackoverflow.com">meta</a>
                </div>
            </div>
            <div id="footer-flair">
                <img src="/Content/Img/footer-cc-wiki-peak-internet.png" width="168" height="67" alt="cc-wiki, PEAK Internet" usemap="#footermap">
                <map name="footermap">
                    <area href="http://creativecommons.org/licenses/by-sa/2.5/" alt="cc-wiki" title="Creative Commons: Attribution - Share Alike"
                        coords="0,0,50,67">
                    <area href="http://www.peakinternet.com/business/hosting/?stackoverflow" alt="PEAK Internet"
                        title="powered by PEAK Internet dedicated server hosting" coords="62,0,168,67">
                </map>
                <div id="svnrev">svn revision: 4103</div>
            </div>
            <div id="copyright">
                site design and logo is &copy; 2009 stackoverflow.com LLC; 
                user contributed content licensed under <a href="http://creativecommons.org/licenses/by-sa/2.5/">cc-wiki</a> with <a href="http://blog.stackoverflow.com/2009/06/attribution-required/">attribution required</a>
            </div>
        </div>
    </div>
    
    <noscript>
        <div id="noscript-warning">Stack Overflow works best with JavaScript enabled</div>
    </noscript>
    
    <script type="text/javascript">
        document.write(unescape("%3Cscript src='http://www.google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
    </script>
    <script type="text/javascript">
        var pageTracker = _gat._getTracker("UA-5620270-1");
        pageTracker._trackPageview();
    </script>
    
    <script type="text/javascript">
    _qoptions = { qacct : "p-c1rF4kxgLUzNc" };
    </script>
    <script type="text/javascript" src="http://edge.quantserve.com/quant.js"></script>
    <noscript>
    <div style="display:none"><img src="http://pixel.quantserve.com/pixel/p-c1rF4kxgLUzNc.gif" alt=""></div>
    </noscript>
    
</body>
</html>